package cn.stylefeng.guns.modular.basicConfig.equipment.equipmentClass.service;

import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.guns.modular.basicConfig.equipment.equipmentClass.entity.EquipmentClass;
import cn.stylefeng.guns.modular.basicConfig.equipment.equipmentClass.pojo.request.EquipmentClassRequest;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 设备服务类
 *
 * @author PANL
 * @since 2023/12/01 14:12
 */
public interface EquipmentClassService extends IService<EquipmentClass> {

    /**
     * 新增设备
     *
     * @param equipmentClassRequest 请求参数
     * @author PANL
     * @since 2023/12/01 14:12
     */
    void add(EquipmentClassRequest equipmentClassRequest);

    /**
     * 删除设备
     *
     * @param equipmentClassRequest 请求参数
     * @author PANL
     * @since 2023/12/01 14:12
     */
    void del(EquipmentClassRequest equipmentClassRequest);

    /**
     * 批量删除设备
     *
     * @param equipmentClassRequest 请求参数
     * @author PANL
     * @since 2023/12/01 14:12
     */
    void batchDelete(EquipmentClassRequest equipmentClassRequest);

    /**
     * 编辑设备
     *
     * @param equipmentClassRequest 请求参数
     * @author PANL
     * @since 2023/12/01 14:12
     */
    void edit(EquipmentClassRequest equipmentClassRequest);

    /**
     * 查询详情设备
     *
     * @param equipmentClassRequest 请求参数
     * @author PANL
     * @since 2023/12/01 14:12
     */
    EquipmentClass detail(EquipmentClassRequest equipmentClassRequest);

    /**
     * 获取设备列表
     *
     * @param equipmentClassRequest         请求参数
     * @return List<EquipmentClass>  返回结果
     * @author PANL
     * @since 2023/12/01 14:12
     */
    List<EquipmentClass> findList(EquipmentClassRequest equipmentClassRequest);

    /**
     * 获取设备分页列表
     *
     * @param equipmentClassRequest                请求参数
     * @return PageResult<EquipmentClass>   返回结果
     * @author PANL
     * @since 2023/12/01 14:12
     */
    PageResult<EquipmentClass> findPage(EquipmentClassRequest equipmentClassRequest);

}
